package top.infopub.mgr.fia.service;


import java.util.List;

import top.infopub.generic.GenericService;
import top.infopub.mgr.fia.domain.OrgBudgetDomain;
import top.infopub.mgr.fia.vo.OrgBudgetVo;
import top.infopub.model.fia.OrgBudget;
import top.infopub.model.fia.OrgBudgetDetail;

import com.github.pagehelper.Page;


public interface OrgBudgetService extends GenericService<OrgBudget, String> {

    /**
     * 根据条件查询分页数据
     * @param page
     * @param orgBudgetVo
     * @return 
     * @see
     */
    Page<OrgBudgetDomain> selectPageByDomainWhere(Page<OrgBudgetDomain> page,
                                                  OrgBudgetVo orgBudgetVo);

    /**
     * 根据id查询详情
     * @param id 主键id
     * @return 
     * @see
     */
    OrgBudgetVo selectById(String id);

    /**
     * 新增记录及子项
     * @param orgBudget
     * @param orgBudgetDetails 
     * @see
     */
    void addOrgBudget(OrgBudgetVo orgBudget, List<OrgBudgetDetail> orgBudgetDetails);

    /**
     * 判断是否存在同一公司名称、同一预算年度已有生效中单据
     */
    int count(Integer belongsYear,String hrOrgBillId);

    /**
     * 
     * 修改操作
     * @param arPlanVo
     * @see
     */
    void udpOrgBudget(OrgBudgetVo orgBudgetVo);

}